﻿using LimaLims.Core.Entity.Basic;
using LimaLims.Core.Enum;
using Microsoft.EntityFrameworkCore;
using System.ComponentModel.DataAnnotations;


namespace LimaLims.Core.Entity.Equipment
{
    /// <summary>
    /// 设备仪器
    /// </summary>
    [Comment("设备仪器")]
    public class EquipmentInfo : DEntityTenant
    {
        /// <summary>
        /// 编号
        /// </summary>
        [Comment("编号")]
        public string Code { get; set; }

        /// <summary>
        /// 名称
        /// </summary>
        [Comment("名称")]
        [Required, MaxLength(20)]
        public string Name { get; set; }

        /// <summary>
        /// 仪器分类Id
        /// </summary>
        [Comment("仪器分类Id")]
        public long EquipmentCategoryId { get; set; }

        /// <summary>
        /// 仪器分类
        /// </summary>
        public EquipmentCategory EquipmentCategory { get; set; }

        /// <summary>
        /// 规格型号
        /// </summary>
        [Comment("规格型号")]
        public string Specification { get; set; }

        /// <summary>
        /// 精度
        /// </summary>
        [Comment("精度")]
        public string Degree { get; set; }

        /// <summary>
        /// 仪器图片
        /// </summary>
        [Comment("仪器图片")]
        public string EquipmentImage { get; set; }

        /// <summary>
        /// 生产日期
        /// </summary>
        [Comment("生产日期")]
        public DateTime? ProduceTime { get; set; }

        /// <summary>
        /// 购买日期
        /// </summary>
        [Comment("购买日期")]
        public DateTime? BuyTime { get; set; }

        /// <summary>
        /// 仪器厂家Id 
        /// </summary>
        [Comment("仪器厂家Id ")]
        public long EquipmentFactoryId { get; set; }

        /// <summary>
        /// 仪器厂家
        /// </summary>
        public EquipmentFactory EquipmentFactory { get; set; }

        /// <summary>
        /// 所属试验站Id 
        /// </summary>
        [Comment("所属试验站Id ")]
        public long ExperimentStationId { get; set; }

        /// <summary>
        /// 所属试验站
        /// </summary>
        public ExperimentStation ExperimentStation { get; set; }

        /// <summary>
        /// 仪器状态
        /// </summary>
        [Comment("仪器状态")]
        public EquipmentStatus EquipmentStatus { get; set; }

        /// <summary>
        /// 备注
        /// </summary>
        [Comment("备注"), MaxLength(100)]
        public string Remark { get; set; }
    }
}
